package com.zenithmind.chat.pojo.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.zenithmind.common.base.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

/**
 * 私聊会话实体类 - 遵循单一职责原则
 * 只负责会话的核心信息，用户状态管理分离到专门的实体类
 *
 * @author ZenithMind Team
 * @since 2025-01-09
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("chat_private_session")
public class ChatPrivateSession extends BaseEntity {

    /**
     * 用户1的ID
     */
    private String user1Id;

    /**
     * 用户2的ID
     */
    private String user2Id;

    /**
     * 最后一条消息ID
     */
    private String lastMessageId;

    /**
     * 最后一条消息内容
     */
    private String lastMessageContent;

    /**
     * 最后一条消息时间
     */
    private LocalDateTime lastMessageTime;

    /**
     * 会话状态（0-禁用，1-正常）
     */
    private Integer status;

    /**
     * 扩展信息（JSON格式）
     */
    private String extraInfo;
}
